package br.com.cicero.notasfiscais.dao;

import java.io.Serializable;
import java.util.List;

import javax.inject.Inject;
import javax.persistence.EntityManager;
import javax.persistence.Query;

import org.jboss.seam.international.status.Messages;

import br.com.cicero.notasfiscais.modelo.Usuario;

public class UsuarioDAO implements Serializable {
	
	@Inject
	private EntityManager em;
	
	public boolean existe(Usuario usuario) {
				
		Query query = em.createQuery("from Usuario u where u.login = "
				+ ":pLogin and u.senha = :pSenha");
		query.setParameter("pLogin", usuario.getLogin());
		query.setParameter("pSenha", usuario.getSenha());
		
		boolean encontrado = !query.getResultList().isEmpty();
						
		return encontrado;
	}
	
	public void adiciona(Usuario usuario) {
		if (usuario.getId() == 0) {
			em.persist(usuario);
		} else {
			em.merge(usuario);
		}
	}
	
	public List<Usuario> listaTodos() {
					
		Query query = em.createQuery("select u from Usuario u");
		List<Usuario> usuarios = query.getResultList();
		
		return usuarios;
	}
	
	public void remove(Usuario usuario) {
		em.remove(usuario);
	}
	
}
